\hypertarget{class_zebulon_1_1_underwater_1_1_global_command}{
\section{Zebulon::Underwater::GlobalCommand Class Reference}
\label{class_zebulon_1_1_underwater_1_1_global_command}\index{Zebulon::Underwater::GlobalCommand@{Zebulon::Underwater::GlobalCommand}}
}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a87c65e8a02b3c4bcb46bde65b8ef038c}{
\hyperlink{class_zebulon_1_1_underwater_1_1_global_command_a87c65e8a02b3c4bcb46bde65b8ef038c}{GlobalCommand} ()}
\label{class_zebulon_1_1_underwater_1_1_global_command_a87c65e8a02b3c4bcb46bde65b8ef038c}

\begin{DoxyCompactList}\small\item\em Constructor, initializes default values. \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a9ebea20c49bf6c6b8634b7092d3dc2e3}{
\hyperlink{class_zebulon_1_1_underwater_1_1_global_command_a9ebea20c49bf6c6b8634b7092d3dc2e3}{$\sim$GlobalCommand} ()}
\label{class_zebulon_1_1_underwater_1_1_global_command_a9ebea20c49bf6c6b8634b7092d3dc2e3}

\begin{DoxyCompactList}\small\item\em Destructor. \item\end{DoxyCompactList}\item 
int \hyperlink{class_zebulon_1_1_underwater_1_1_global_command_aae9f5c3ac7c2c629020c46dc4f204102}{Initialize} (\hyperlink{class_zebulon_1_1_underwater_1_1_global_info}{GlobalInfo} $\ast$globalInfo, unsigned int delayTimeMs=50)
\begin{DoxyCompactList}\small\item\em Initialize, must be called to initialize class and passed global info. \item\end{DoxyCompactList}\item 
int \hyperlink{class_zebulon_1_1_underwater_1_1_global_command_a1baae93bc0c638b845580a69850e351f}{SetDesiredHeading} (const double heading)
\begin{DoxyCompactList}\small\item\em Sets the desired heading. \item\end{DoxyCompactList}\item 
int \hyperlink{class_zebulon_1_1_underwater_1_1_global_command_a53b704204cad6270beb2df2ae5223b88}{SetDesiredDepth} (const double depth)
\begin{DoxyCompactList}\small\item\em Sets the desired depth. \item\end{DoxyCompactList}\item 
int \hyperlink{class_zebulon_1_1_underwater_1_1_global_command_add5839bb8c3f7ee790218291dc31e128}{SetForwardPower} (const double power)
\begin{DoxyCompactList}\small\item\em Sets the desired forward thruster power. \item\end{DoxyCompactList}\item 
int \hyperlink{class_zebulon_1_1_underwater_1_1_global_command_a1efb79e9aacfb468e918516bf1ac5fcb}{SetVerticalPower} (const double power)
\begin{DoxyCompactList}\small\item\em Sets the desired vertical thruster power. \item\end{DoxyCompactList}\item 
int \hyperlink{class_zebulon_1_1_underwater_1_1_global_command_a1192a288bdc5cd3ad00f6b576ceca973}{SetTurnPower} (const double power)
\begin{DoxyCompactList}\small\item\em Sets the desired turn thruster power. \item\end{DoxyCompactList}\item 
int \hyperlink{class_zebulon_1_1_underwater_1_1_global_command_abbadc938513836f09c62390fc8cbd465}{SetDigitalDeviceState} (const DigitalDevice port, const bool state)
\begin{DoxyCompactList}\small\item\em Sets the desired state of the device. \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a265a0ea6b4070858a486f8a8751acea9}{
double {\bfseries GetDesiredHeading} ()}
\label{class_zebulon_1_1_underwater_1_1_global_command_a265a0ea6b4070858a486f8a8751acea9}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a2676c84a59f2559dddc6d08d3cda651c}{
double {\bfseries GetForwardPower} ()}
\label{class_zebulon_1_1_underwater_1_1_global_command_a2676c84a59f2559dddc6d08d3cda651c}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a2d4afb11e2c4031039f8065bd0996439}{
double {\bfseries GetVerticalPower} ()}
\label{class_zebulon_1_1_underwater_1_1_global_command_a2d4afb11e2c4031039f8065bd0996439}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a145d8e986bbb302d25183053e816842b}{
double {\bfseries GetTurnPower} ()}
\label{class_zebulon_1_1_underwater_1_1_global_command_a145d8e986bbb302d25183053e816842b}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a70b87bc0c4fb3536f33c4c1cf941533a}{
void \hyperlink{class_zebulon_1_1_underwater_1_1_global_command_a70b87bc0c4fb3536f33c4c1cf941533a}{PrintStatus} () const }
\label{class_zebulon_1_1_underwater_1_1_global_command_a70b87bc0c4fb3536f33c4c1cf941533a}

\begin{DoxyCompactList}\small\item\em Prints status of important variables. \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_abf8489dbc381040046ef3db6d664b3da}{
int {\bfseries Shutdown} ()}
\label{class_zebulon_1_1_underwater_1_1_global_command_abf8489dbc381040046ef3db6d664b3da}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_ae9556e8d31279d84c79e7556b41d9ea8}{
bool {\bfseries LoadXML} (std::string filename)}
\label{class_zebulon_1_1_underwater_1_1_global_command_ae9556e8d31279d84c79e7556b41d9ea8}

\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_ac9a277054d55bcb0d63b168256f7014f}{
virtual int {\bfseries ProcessDiscoveryEvent} (const Jaus::Platform \&subsystem, const Jaus::SubscriberComponent::DiscoveryEvents eventType)}
\label{class_zebulon_1_1_underwater_1_1_global_command_ac9a277054d55bcb0d63b168256f7014f}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a5fcbe53aa47b2e006bf6da0064c67041}{
bool {\bfseries LoadControllerXML} (\hyperlink{class_ti_xml_element}{TiXmlElement} $\ast$xml, CxUtils::PIDController \&controller)}
\label{class_zebulon_1_1_underwater_1_1_global_command_a5fcbe53aa47b2e006bf6da0064c67041}

\end{DoxyCompactItemize}
\subsection*{Static Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
static void \hyperlink{class_zebulon_1_1_underwater_1_1_global_command_a011865e58dffc2cecb76c3d7f6f2a8a8}{CommandThread} (void $\ast$args)
\begin{DoxyCompactList}\small\item\em thread where we send out commands \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_ac428f2317391c0e74770cdbb9e51a8b0}{
\hyperlink{class_zebulon_1_1_underwater_1_1_global_info}{GlobalInfo} $\ast$ {\bfseries mGlobalInfo}}
\label{class_zebulon_1_1_underwater_1_1_global_command_ac428f2317391c0e74770cdbb9e51a8b0}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a8d84f9bba262d4061d642d2aa0a82d12}{
Jaus::Address \hyperlink{class_zebulon_1_1_underwater_1_1_global_command_a8d84f9bba262d4061d642d2aa0a82d12}{mPrimitiveDriverID}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a8d84f9bba262d4061d642d2aa0a82d12}

\begin{DoxyCompactList}\small\item\em Drives the sub. \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_ab4f714a06348e89f7f1c13243b878df5}{
Jaus::Address \hyperlink{class_zebulon_1_1_underwater_1_1_global_command_ab4f714a06348e89f7f1c13243b878df5}{mRabbitID}}
\label{class_zebulon_1_1_underwater_1_1_global_command_ab4f714a06348e89f7f1c13243b878df5}

\begin{DoxyCompactList}\small\item\em Address of rabbit component which controls many devices. \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_ad638661f43e6cd41de9c4a52822a4f66}{
int \hyperlink{class_zebulon_1_1_underwater_1_1_global_command_ad638661f43e6cd41de9c4a52822a4f66}{mDelayTimeMs}}
\label{class_zebulon_1_1_underwater_1_1_global_command_ad638661f43e6cd41de9c4a52822a4f66}

\begin{DoxyCompactList}\small\item\em frequency that we send commands out. \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a3dcb029490f94447535cebd45e2e5075}{
CxUtils::Thread {\bfseries mCommandThread}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a3dcb029490f94447535cebd45e2e5075}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_af8b0aaf676ccbff00b84a9b4aa258a38}{
double {\bfseries mDesiredHeading}}
\label{class_zebulon_1_1_underwater_1_1_global_command_af8b0aaf676ccbff00b84a9b4aa258a38}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a8b9185bae712c27396886a72187220ee}{
double {\bfseries mDesiredDepth}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a8b9185bae712c27396886a72187220ee}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_af5ed7c7171d62156f64686ebe54d8e36}{
double {\bfseries mForwardPower}}
\label{class_zebulon_1_1_underwater_1_1_global_command_af5ed7c7171d62156f64686ebe54d8e36}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a9b7f0d3e87b180428529668dadc1a097}{
double {\bfseries mVerticalPower}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a9b7f0d3e87b180428529668dadc1a097}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a4cfc776027df22fafa94c035ae4bba65}{
double {\bfseries mTurnPower}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a4cfc776027df22fafa94c035ae4bba65}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_ae031186957428be7bca7f01a40c3ed2f}{
int \hyperlink{class_zebulon_1_1_underwater_1_1_global_command_ae031186957428be7bca7f01a40c3ed2f}{mForwardMode}}
\label{class_zebulon_1_1_underwater_1_1_global_command_ae031186957428be7bca7f01a40c3ed2f}

\begin{DoxyCompactList}\small\item\em tells us the last type of command issued defined by enum CommandMode \item\end{DoxyCompactList}\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a41dd85085ed6d394f3ebda873c86ddac}{
int {\bfseries mVerticalMode}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a41dd85085ed6d394f3ebda873c86ddac}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a1946a5916d665cdccbe229e9b11363b2}{
int {\bfseries mTurnMode}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a1946a5916d665cdccbe229e9b11363b2}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a4d33962692ac0c3078e44e836767ade7}{
CxUtils::Mutex {\bfseries mHeadingMutex}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a4d33962692ac0c3078e44e836767ade7}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a038782e545f6ef920250d22b04ccca73}{
int {\bfseries mSolenoid2FireCount}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a038782e545f6ef920250d22b04ccca73}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a5aaea11d18b2fa86726b0a842187cfce}{
int {\bfseries mSolenoid2State}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a5aaea11d18b2fa86726b0a842187cfce}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_ace958a326b69fdc3191b66f0955db8e1}{
Jaus::Device {\bfseries mSolenoid1}}
\label{class_zebulon_1_1_underwater_1_1_global_command_ace958a326b69fdc3191b66f0955db8e1}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a5e3e5612b5d75bf8ef5c6c2e32599f9d}{
Jaus::Device {\bfseries mSolenoid2}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a5e3e5612b5d75bf8ef5c6c2e32599f9d}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_abad8eba5b85771241983cbcc393794cf}{
Jaus::Device {\bfseries mError1}}
\label{class_zebulon_1_1_underwater_1_1_global_command_abad8eba5b85771241983cbcc393794cf}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a185cebef6be9074ae318b6face8372c4}{
Jaus::Device {\bfseries mError2}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a185cebef6be9074ae318b6face8372c4}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a225af72d1543d39370f4bbfc14ca822c}{
Jaus::Device {\bfseries mHydroOut1}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a225af72d1543d39370f4bbfc14ca822c}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a287e8039699cbdf9426182dd0b07a2fa}{
Jaus::Device {\bfseries mHydroOut2}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a287e8039699cbdf9426182dd0b07a2fa}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_ae97d4537259291b2860083018b34a107}{
Jaus::Device {\bfseries mSpareOut1}}
\label{class_zebulon_1_1_underwater_1_1_global_command_ae97d4537259291b2860083018b34a107}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a1b58c55e74edd4c666085409444216af}{
volatile bool {\bfseries mSolenoid1Changed}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a1b58c55e74edd4c666085409444216af}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a5b619807f462440631283050d23ed976}{
volatile bool {\bfseries mSolenoid2Changed}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a5b619807f462440631283050d23ed976}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_af6e607fd2ace880587e6b9522db04f1d}{
volatile bool {\bfseries mError1Changed}}
\label{class_zebulon_1_1_underwater_1_1_global_command_af6e607fd2ace880587e6b9522db04f1d}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a5506958072eb5c45cfee631a7ac69731}{
volatile bool {\bfseries mError2Changed}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a5506958072eb5c45cfee631a7ac69731}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a018a715bfbfcb06048bc936d30b9d327}{
volatile bool {\bfseries mHydroOutChanged1}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a018a715bfbfcb06048bc936d30b9d327}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a930f7587ad073dc1866ca3cc06d75a52}{
volatile bool {\bfseries mHydroOutChanged2}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a930f7587ad073dc1866ca3cc06d75a52}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_ab8294b12ab452a9234585116b87a0fff}{
volatile bool {\bfseries mSpareOut1Changed}}
\label{class_zebulon_1_1_underwater_1_1_global_command_ab8294b12ab452a9234585116b87a0fff}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a467f834fb896871a5075fa46a918172c}{
CxUtils::Mutex {\bfseries mDeviceMutex}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a467f834fb896871a5075fa46a918172c}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a60764f5b6b3c5104b06ae2fb73ba7467}{
CxUtils::PIDController {\bfseries mHeadingController}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a60764f5b6b3c5104b06ae2fb73ba7467}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_af2279ba3ada36fee834bced1eb100a87}{
CxUtils::PIDController {\bfseries mDepthController}}
\label{class_zebulon_1_1_underwater_1_1_global_command_af2279ba3ada36fee834bced1eb100a87}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_addd5423321960c6629f6439b28a070e4}{
double {\bfseries mPropulsiveLinearEffortX}}
\label{class_zebulon_1_1_underwater_1_1_global_command_addd5423321960c6629f6439b28a070e4}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a4f52dc044b026c562f87d9a699afaf9c}{
double {\bfseries mPropulsiveRotationalEffortZ}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a4f52dc044b026c562f87d9a699afaf9c}

\item 
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_aa57bb4137e862b621f5b4277d68bbd9d}{
double {\bfseries mPropulsiveLinearEffortZ}}
\label{class_zebulon_1_1_underwater_1_1_global_command_aa57bb4137e862b621f5b4277d68bbd9d}

\end{DoxyCompactItemize}


\subsection{Member Function Documentation}
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a011865e58dffc2cecb76c3d7f6f2a8a8}{
\index{Zebulon::Underwater::GlobalCommand@{Zebulon::Underwater::GlobalCommand}!CommandThread@{CommandThread}}
\index{CommandThread@{CommandThread}!Zebulon::Underwater::GlobalCommand@{Zebulon::Underwater::GlobalCommand}}
\subsubsection[{CommandThread}]{\setlength{\rightskip}{0pt plus 5cm}void GlobalCommand::CommandThread (void $\ast$ {\em args})\hspace{0.3cm}{\ttfamily  \mbox{[}static, protected\mbox{]}}}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a011865e58dffc2cecb76c3d7f6f2a8a8}


thread where we send out commands Thread responsible for sending out Jaus commands.


\begin{DoxyParams}{Parameters}
\item[\mbox{$\leftarrow$} {\em args}]This global command class. \end{DoxyParams}
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_aae9f5c3ac7c2c629020c46dc4f204102}{
\index{Zebulon::Underwater::GlobalCommand@{Zebulon::Underwater::GlobalCommand}!Initialize@{Initialize}}
\index{Initialize@{Initialize}!Zebulon::Underwater::GlobalCommand@{Zebulon::Underwater::GlobalCommand}}
\subsubsection[{Initialize}]{\setlength{\rightskip}{0pt plus 5cm}int GlobalCommand::Initialize ({\bf GlobalInfo} $\ast$ {\em globalInfo}, \/  unsigned int {\em delayTimeMs} = {\ttfamily 50})}}
\label{class_zebulon_1_1_underwater_1_1_global_command_aae9f5c3ac7c2c629020c46dc4f204102}


Initialize, must be called to initialize class and passed global info. 
\begin{DoxyParams}{Parameters}
\item[\mbox{$\leftarrow$} {\em globalInfo}]global info class that we will be getting feedback from \item[\mbox{$\leftarrow$} {\em delayTimeMs}]frequency between sending all commands. \end{DoxyParams}
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a53b704204cad6270beb2df2ae5223b88}{
\index{Zebulon::Underwater::GlobalCommand@{Zebulon::Underwater::GlobalCommand}!SetDesiredDepth@{SetDesiredDepth}}
\index{SetDesiredDepth@{SetDesiredDepth}!Zebulon::Underwater::GlobalCommand@{Zebulon::Underwater::GlobalCommand}}
\subsubsection[{SetDesiredDepth}]{\setlength{\rightskip}{0pt plus 5cm}int GlobalCommand::SetDesiredDepth (const double {\em depth})}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a53b704204cad6270beb2df2ae5223b88}


Sets the desired depth. 
\begin{DoxyParams}{Parameters}
\item[\mbox{$\leftarrow$} {\em depth}]depth in meters, 0 is surface, max bound undefined. \end{DoxyParams}
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a1baae93bc0c638b845580a69850e351f}{
\index{Zebulon::Underwater::GlobalCommand@{Zebulon::Underwater::GlobalCommand}!SetDesiredHeading@{SetDesiredHeading}}
\index{SetDesiredHeading@{SetDesiredHeading}!Zebulon::Underwater::GlobalCommand@{Zebulon::Underwater::GlobalCommand}}
\subsubsection[{SetDesiredHeading}]{\setlength{\rightskip}{0pt plus 5cm}int GlobalCommand::SetDesiredHeading (const double {\em heading})}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a1baae93bc0c638b845580a69850e351f}


Sets the desired heading. 
\begin{DoxyParams}{Parameters}
\item[\mbox{$\leftarrow$} {\em heading}]in degrees from 0 to 360 where 0 = north, 90 = east. \end{DoxyParams}
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_abbadc938513836f09c62390fc8cbd465}{
\index{Zebulon::Underwater::GlobalCommand@{Zebulon::Underwater::GlobalCommand}!SetDigitalDeviceState@{SetDigitalDeviceState}}
\index{SetDigitalDeviceState@{SetDigitalDeviceState}!Zebulon::Underwater::GlobalCommand@{Zebulon::Underwater::GlobalCommand}}
\subsubsection[{SetDigitalDeviceState}]{\setlength{\rightskip}{0pt plus 5cm}int GlobalCommand::SetDigitalDeviceState (const DigitalDevice {\em port}, \/  const bool {\em state})}}
\label{class_zebulon_1_1_underwater_1_1_global_command_abbadc938513836f09c62390fc8cbd465}


Sets the desired state of the device. 
\begin{DoxyParams}{Parameters}
\item[\mbox{$\leftarrow$} {\em port}]port number as defined in \hyperlink{underwater_8h}{underwater.h} \item[\mbox{$\leftarrow$} {\em state}]true = on, false = off. \end{DoxyParams}
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_add5839bb8c3f7ee790218291dc31e128}{
\index{Zebulon::Underwater::GlobalCommand@{Zebulon::Underwater::GlobalCommand}!SetForwardPower@{SetForwardPower}}
\index{SetForwardPower@{SetForwardPower}!Zebulon::Underwater::GlobalCommand@{Zebulon::Underwater::GlobalCommand}}
\subsubsection[{SetForwardPower}]{\setlength{\rightskip}{0pt plus 5cm}int GlobalCommand::SetForwardPower (const double {\em power})}}
\label{class_zebulon_1_1_underwater_1_1_global_command_add5839bb8c3f7ee790218291dc31e128}


Sets the desired forward thruster power. 
\begin{DoxyParams}{Parameters}
\item[\mbox{$\leftarrow$} {\em power}]desired power from -\/100 to 100. \end{DoxyParams}
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a1192a288bdc5cd3ad00f6b576ceca973}{
\index{Zebulon::Underwater::GlobalCommand@{Zebulon::Underwater::GlobalCommand}!SetTurnPower@{SetTurnPower}}
\index{SetTurnPower@{SetTurnPower}!Zebulon::Underwater::GlobalCommand@{Zebulon::Underwater::GlobalCommand}}
\subsubsection[{SetTurnPower}]{\setlength{\rightskip}{0pt plus 5cm}int GlobalCommand::SetTurnPower (const double {\em power})}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a1192a288bdc5cd3ad00f6b576ceca973}


Sets the desired turn thruster power. 
\begin{DoxyParams}{Parameters}
\item[\mbox{$\leftarrow$} {\em power}]desired power from -\/100 to 100. -\/ is left, + is right \end{DoxyParams}
\hypertarget{class_zebulon_1_1_underwater_1_1_global_command_a1efb79e9aacfb468e918516bf1ac5fcb}{
\index{Zebulon::Underwater::GlobalCommand@{Zebulon::Underwater::GlobalCommand}!SetVerticalPower@{SetVerticalPower}}
\index{SetVerticalPower@{SetVerticalPower}!Zebulon::Underwater::GlobalCommand@{Zebulon::Underwater::GlobalCommand}}
\subsubsection[{SetVerticalPower}]{\setlength{\rightskip}{0pt plus 5cm}int GlobalCommand::SetVerticalPower (const double {\em power})}}
\label{class_zebulon_1_1_underwater_1_1_global_command_a1efb79e9aacfb468e918516bf1ac5fcb}


Sets the desired vertical thruster power. 
\begin{DoxyParams}{Parameters}
\item[\mbox{$\leftarrow$} {\em power}]desired power from -\/100 to 100. -\/ is down, + is up. \end{DoxyParams}


The documentation for this class was generated from the following files:\begin{DoxyCompactItemize}
\item 
C:/Users/Matt/Documents/School/Robotics/zebulon/v2/underwater/include/underwater/globalcommand.h\item 
C:/Users/Matt/Documents/School/Robotics/zebulon/v2/underwater/src/underwater/globalcommand.cpp\end{DoxyCompactItemize}
